"""
对于and 和 or 都是惰性加载的

所以把假的可能性高的放在and前面，把真可能性高的放在or前面，减少不必要的计算
"""


# 无限循环问题

def fib():
    a, b = 0, 1
    while True:
        yield a
        a, b = b, a + b


# islice 迭代器的切片
from itertools import islice

print(list(islice(fib(), 5)))
